Este driver permite o acesso a uma Imagem de Cliente. Trata-se de uma imagem baseada em cores RGB que tem 24 bits por pixel (8 por canal). Ela é usada para implementar desenhos offscreen de alta qualidade, porém é mais lenta que a versão Imagem de Servidor. De fato, ela é um rasterizador, ou seja, ela converte primitivas de vetores em uma representação raster. Todas as primitivas são implementadas pela biblioteca e não são dependentes do sistema (as primitivas da versão Imagem de Servidor dependem do sistema).
O canvas é criado chamando-se a função cdCreateCanvas(CD_IMAGERGB, Data), após o que outras funções da biblioteca CD podem ser chamadas normalmente. A função cria uma imagem de cliente RGB e, então, um canvas CD. O string de parâmetros Data possui o seguinte formato:
"widthxheight [r g b] -r[resolution]" ou em C "%dx%d %p %p %p -r%g"
Ele deve conter as dimensões do canvas. Width e height são dados em pixels (note o "x" em caixa baixa entre eles). Como opção, você pode especificar os buffers a serem utilizados pelo driver, de forma que possa desenhar sobre uma imagem existente. Pode-se especificar a resolução com o parâmetro -r, o valor defaul é "3.8".
Qualquer quantidade desses canvas pode existir simultaneamente. É importante notar que é preciso chamar a função cdKillCanvas para finalizar o driver de maneira apropriada.
Em CDLUA, pode-se criar o canvas de duas formas, com uma imagem já definida ou sem essa imagem. Com a imagem, deve-se passar como parâmetro uma imagem RGB criada pelas funções cdCreateImageRGB ou cdCreateImageEx em Lua, a resolução deve ser passada como na string acima, em um parâmetro extra depois da imagem. Sem a imagem deve-se passar como parâmetro uma string no formato acima excluindo os ponteiros rgb.
FALHA: na plataforma SunOS, use "%d", ao invés de "%p", devido a uma falha interna da biblioteca run time desse OS.
Dá como retorno o buffer de imagem vermelho. O formato do buffer é compatível com a especificação de imagem de cliente da biblioteca CD.
Dá como retorno o buffer de imagem verde. O formato do buffer é compatível com a especificação de imagem de cliente da biblioteca CD.
Dá como retorno o buffer de imagem azul. O formato do buffer é compatível com a especificação de imagem de cliente da biblioteca CD.
Retorna a imagem RGB interna do canvas.
Todas as primitivas são do driver de Simulação, consulte a dcumentação desse driver para maiores informações.